home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1 / Nebula One.iso / Utilities / Workspace / Locus / Source / GroupBrowserMatrix.h < prev    next >
Text File  |  1995-06-12  |  2KB  |  82 lines

  1.  
  2. /*
  3.     Copyright 1993  Jeremy Slade.
  4.  
  5.     You are free to use all or any parts of the Locus project
  6.     however you wish, just give credit where credit is due.
  7.     The author (Jeremy Slade) shall not be held responsible
  8.     for any damages that result out of use or misuse of any
  9.     part of this project.
  10.  
  11. */
  12.  
  13. /*
  14.     Project: Locus
  15.     
  16.     Class: GroupBrowserMatrix
  17.     
  18.     Description:
  19.  
  20.     This class is the matrix (single column) in which the Group is displayed.  This currently works for the browsing draw modes -- icon modes will need a completely different method of display.  The group to be displayed is installed directly as the matrix's cellList instead of being copied, for speed.
  21.     
  22.     Original Author: Jeremy Slade
  23.     
  24.     Revision History:
  25.         Created
  26.             V.101    JGS Wed Feb  3 23:47:02 GMT-0700 1993
  27.  
  28. */
  29.  
  30. #ifndef GroupBrowserMatrix_h
  31. #define GroupBrowserMatrix_h
  32.  
  33. #define GroupBrowserMatrix_VERSION    (101)
  34.  
  35.  
  36. #import <appkit/Matrix.h>
  37. #import <appkit/drag.h>
  38.  
  39.  
  40. @interface GroupBrowserMatrix : Matrix
  41. {
  42.     int selectionCount;
  43.     id    activeCell;
  44. }
  45.  
  46. // Creating, initializing instances
  47. + initialize;
  48.  
  49. // Loading the group
  50. - setGroup:group;
  51.  
  52. // Responding to mouseDown events
  53. - mouseDown:(NXEvent *)event;
  54. - controlDragMouse:(NXEvent *)event;
  55. - alternateDragMouse:(NXEvent *)event;
  56.  
  57. // Making Selection
  58. - selectAll:sender;
  59. - selectCellAt:(int)row :(int)col;
  60. - selectCell:aCell;
  61. - selectedCell;
  62. - determineSelectionCount;
  63. - selection;
  64. - selectionList;
  65. - (int)selectionCount;
  66.  
  67. // Drawing
  68. - drawSelf:(NXRect *)rects :(int)count;
  69. - scrollCellToVisible:(int)row :(int)col;
  70. - sizeToCells;
  71.  
  72. // Cache windows used for faster drawing
  73. - setupCacheWindows;
  74. - sizeCacheWindow:cacheWindow to:(NXSize *)windowSize;
  75.  
  76. // NXDraggingSource Protocol
  77. - (NXDragOperation)draggingSourceOperationMaskForLocal:(BOOL)isLocal;
  78.  
  79. @end
  80.  
  81. #endif // GroupBrowserMatrix_h
  82.